home *** CD-ROM | disk | FTP | other *** search
/ FM Towns: Free Software Collection 7 / FM Towns Free Software Collection 7.iso / data / happysrc / pcpcd.h < prev    next >
Text File  |  1993-11-30  |  6KB  |  118 lines

  1. /**********************************/
  2. /*      HAPPy Pascal compiler     */
  3. /*         P-code ニーモック      */
  4. /*           header               */
  5. /*                                */
  6. /*   Copyright (c) H.Asano 1992   */
  7. /**********************************/
  8.  
  9. /****** P-code ニーモニック 定義 (アルファベット順)    ******/
  10.  
  11. enum pcdmnc {
  12.              iABI,  /* abolute integer                      */
  13.              iABR,  /* abolute real                         */   
  14.              iADI,  /* add integers                         */
  15.              iADR,  /* add reals                            */
  16.              iAND,  /* logical and                          */
  17.              iBAS,  /* load base mark address               */
  18.              iCHK,  /* check value between bounds           */
  19.              iCHR,  /* chr                                  */
  20.              iCKA,  /* check address                        */ 
  21.              iCSP,  /* call standard procedure              */
  22.              iCUI,  /* call user procedure indirect         */
  23.              iCUP,  /* call user procedure                  */
  24.              iDEC,  /* decrement                            */
  25.              iDIF,  /* difference                           */
  26.              iDVI,  /* divide integers                      */
  27.              iDVR,  /* divide reals                         */
  28.              iEJP,  /* extra block jump                     */
  29.              iENT,  /* enter procedure                      */
  30.              iEQU,  /* equal                                */
  31.              iFJP,  /* jump on false                        */
  32.              iFLO,  /* float integer to real                */
  33.              iFLT,  /* float integer to real                */
  34.              iGEQ,  /* grater than equal                    */
  35.              iGRT,  /* grater than                          */
  36.              iINC,  /* increment                            */
  37.              iIND,  /* indexed fetch                        */
  38.              iINN,  /* in operator                          */
  39.              iINT,  /* intersection                         */
  40.              iIOR,  /* logical inclusive or                 */
  41.              iIXA,  /* indeced address                      */
  42.              iLAO,  /* load base-level address              */
  43.              iLAP,  /* load address of procedure            */
  44.              iLCA,  /* load address of constant             */
  45.              iLDA,  /* load level p address                 */
  46.              iLDC,  /* load constant                        */
  47.              iLDO,  /* load contents of base-level address  */
  48.              iLEQ,  /* less than equal                      */
  49.              iLES,  /* less than                            */
  50.              iLOD,  /* load contents of address at level p  */
  51.              iMMS,  /* make multiple set                    */
  52.              iMOD,  /* modulo                               */
  53.              iMOV,  /* move                                 */
  54.              iMPI,  /* mulutiple integers                   */
  55.              iMPR,  /* mulutiple reals                      */
  56.              iMSI,  /* mask stack indirect                  */
  57.              iMST,  /* mark stack                           */
  58.              iNEQ,  /* not equal                            */
  59.              iNGI,  /* negative integer                     */
  60.              iNGR,  /* negative real                        */
  61.              iNOT,  /* not                                  */
  62.              iODD,  /* odd                                  */
  63.              iORD,  /* ord                                  */
  64.              iRET,  /* return from procedure or function    */
  65.              iROU,  /* round                                */
  66.              iSBI,  /* subtract integers                    */
  67.              iSBR,  /* subtract reals                       */
  68.              iSGS,  /* create singleton set                 */
  69.              iSQI,  /* square integer                       */
  70.              iSQR,  /* square real                          */
  71.              iSRO,  /* store at base-level address          */
  72.              iSTO,  /* store indirect                       */
  73.              iSTP,  /* stop                                 */
  74.              iSTR,  /* store contents at address at level p */
  75.              iTRA,  /* trace of execution                   */
  76.              iTRC,  /* truncate                             */
  77.              iUJC,  /* check uncondition jump               */
  78.              iUJP,  /* uncondition jump                     */
  79.              iUNI,  /* union                                */
  80.              iXJP,  /* indexed jump                         */
  81.              iZZZ   /* 終わり                               */
  82. } ;
  83.  
  84. /****** P-code 標準関数・手続き ニーモニック 定義  ******/
  85. enum pcdprmnc {
  86.              pATN,  /* arctan        */
  87.              pCOS,  /* cos           */
  88.              pDIS,  /* dispose       */
  89.              pEOF,  /* eof           */
  90.              pEOL,  /* eoln          */
  91.              pEXP,  /* exp           */
  92.              pGET,  /* get           */
  93.              pLOG,  /* ln            */
  94.              pNEW,  /* new           */
  95.              pPGE,  /* page          */
  96.              pPUT,  /* put           */
  97.              pRDC,  /* read char     */
  98.              pRDI,  /* read integer  */
  99.              pRDR,  /* read real     */
  100.              pRLN,  /* readln        */
  101.              pRST,  /* reset         */
  102.              pRWT,  /* rewrite       */
  103.              pSIN,  /* sin           */
  104.              pSQT,  /* sqrt          */
  105.              pTGT,  /* get text      */
  106.              pTPT,  /* put text      */
  107.              pTRS,  /* reset text    */
  108.              pTRW,  /* rewrite text  */
  109.              pWLN,  /* writeln       */
  110.              pWRB,  /* write boolean */
  111.              pWRC,  /* write char    */
  112.              pWRF,  /* write real fix*/
  113.              pWRI,  /* write integer */
  114.              pWRR,  /* write real    */
  115.              pWRS,  /* write string  */
  116.              pZZZ   /* 終わり        */
  117. } ;
  118.